package com.kymatrix.kycarbon.xsmd.system.server.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.kymatrix.kycarbon.xsmd.system.server.model.entity.RoleEntity;
import com.kymatrix.kycarbon.xsmd.system.server.model.form.role.InsertRoleReq;
import com.kymatrix.kycarbon.xsmd.system.server.model.form.role.ListQueryRoleResp;
import com.kymatrix.kycarbon.xsmd.system.server.model.form.role.PageQueryRoleReq;
import com.kymatrix.kycarbon.xsmd.system.server.model.form.role.PageQueryRoleResp;
import com.kymatrix.kycarbon.xsmd.system.server.model.form.role.QueryRoleResp;
import com.kymatrix.kycarbon.xsmd.system.server.model.form.role.UpdateRoleReq;
import java.util.List;

public interface IRoleService extends IService<RoleEntity> {

    void save(InsertRoleReq req);

    void updateRole(UpdateRoleReq req);

    void deleteRole(String id);

    Page<PageQueryRoleResp> pageQuery(PageQueryRoleReq req);

    QueryRoleResp getRole(String id);

    List<ListQueryRoleResp> list(String name);

    List<RoleEntity> selectByIds(List<String> roleIdList);
}
